Oblivious Sorting and Queues
نویسنده
چکیده
We present a deterministic oblivious LIFO (Stack), FIFO, double-ended and double-ended priority queue as well as an oblivious mergesort and quicksort algorithm. Our techniques and ideas include concatenating queues end-to-end, size balancing of multiple arrays, several multi-level partitionings of an array. Our queues are the first to enable executions of pop and push operations without any change of the data structure (controlled by a parameter). This enables interesting applications in computing on encrypted data such as hiding confidential expressions. Mergesort becomes practical using our LIFO queue, ie. it improves prior work (STOC ’14) by a factor of (more than) 1000 in terms of comparisons for all practically relevant queue sizes. We are the first to present double-ended (priority) and LIFO queues as well as oblivious quicksort which is asymptotically optimal. Aside from theortical analysis, we also provide an empirical evaluation of all queues.
منابع مشابه
Classic and New Data Structure Problems in External Memory
The demand of efficient data structures for query processing on massive data sets has grown tremendously in the past decades. Traditionally, data structures are designed and analyzed in the RAM model, where each memory cell can be accessed with unit cost. This assumption, however, is unrealistic for modeling modern memory hierarchies which consist of many levels of memories and caches with diff...
متن کامل3 Cache - Oblivious Priority Queues
Last lecture we discussed the cache-oblivious model for algorithm and data structure design, and surveyed current results within this model. During this survey, we developed the idea of a cacheoblivious dynamic B-tree. In order to construct this data structure, we utilized a black box component data structure that could maintain an array of N elements in order in O(N) space and achieve insert/d...
متن کاملOblivious Sorting of Secret-Shared Data
In this research report we give an overview of methods for obliviously sorting data that has been protected using secret sharing. Oblivious sorting is an important primitive in privacypreserving data analysis, as it can impose order on secret-shared data, simplifying the construction of data transformation and aggregation algorithms. In this work, we compare several published sorting methods wi...
متن کاملAn Empirical Study of Cache-Oblivious Priority Queues and their Application to the Shortest Path Problem
In recent years the Cache-Oblivious model of external memory computation has provided an attractive theoretical basis for the analysis of algorithms on massive datasets. Much progress has been made in discovering algorithms that are asymptotically optimal or near optimal. However, to date there are still relatively few successful experimental studies. In this paper we compare two different Cach...
متن کاملData-Oblivious Data Structures
An algorithm is called data-oblivious if its control flow and memory access pattern do not depend on its input data. Data-oblivious algorithms play a significant role in secure cloud computing, since programs that are run on secret data—as in fully homomorphic encryption or secure multiparty computation—must be data-oblivious. In this paper, we formalize three definitions of data-obliviousness ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/1612.03343 شماره
صفحات -
تاریخ انتشار 2016